const app = getApp()
const request = require('../../utils/promise.js');
const common = require('../../utils/common.js');

Page({
  data: {
    StatusBar: app.globalData.StatusBar,
    CustomBar: app.globalData.CustomBar,
    TabCur: 0,
    lessionList: [],
    WebUrl: app.globalData.weburl,
    piclist: [],
  },
  onLoad: function () {
    var parm1 = getApp().globalData.parm1;
    console.log('parm1', parm1);
    if (parm1 == undefined) {
      parm1 = 0;
    }
    console.log('parm1', parm1);
    this.loadLession(parm1);
  },
  tabSelect(e) {
    console.log('e', e);
    this.loadLession(e.currentTarget.dataset.id);
    this.setData({
      TabCur: e.currentTarget.dataset.id,
    })
  },
  loadLession: function (val) {
    this.setData({
      TabCur: val
    })
    console.log('val', val);
    if (val == '0') {
      var parm = {
        "contentCategory": "wuye",
      };
    } else if (val == '1') {
      var parm = {
        "contentType": 3,
      };
    }

    request.GET("/mdz/upfile/filelist", parm).then(res => {
      console.log('res', res.data.rows);
      if (res.data.code == "200") {
        
        this.setData({
          piclist: res.data.rows
        });
        var groupData = this.groupDataByDate(res.data.rows)

        console.log('groupData', groupData);
        // 遍历分组后的数据，并删除每个 item 的 filePath 的第一个字符
        const processedData = groupData.map(group => ({
          date: group.date,
          items: group.items.map(item => ({
            ...item,
            filePath: item.filePath.slice(1) // 删除 filePath 的第一个字符
          }))
        }));
        console.log('processedData', processedData);
        this.setData({
          lessionList: processedData
        });
      }
      else {
        common.CheckErrorForBusiness(res.data.message);
      }
    })
  },
  groupDataByDate: function (dataList) {
    const groupedData = {};
    dataList.forEach(item => {
      const date = this.formatDate(item.fileDate); // 格式化日期，可以根据需要调整格式
      if (!groupedData[date]) {
        groupedData[date] = [];
      }
      groupedData[date].push(item);
    });

    // 将对象的键（日期）转换为数组，并进行倒序排序
    const sortedDates = Object.keys(groupedData).sort((a, b) => new Date(b) - new Date(a));

    // 将排序后的日期数组转换为所需的数据格式
    return sortedDates.map(date => ({
      date: date,
      items: groupedData[date]
    }));
  },
  // 格式化日期的函数，可以根据需要调整
  formatDate: function (dateStr) {
    const date = new Date(dateStr);
    const year = date.getFullYear();
    const month = (date.getMonth() + 1).toString().padStart(2, '0');
    const day = date.getDate().toString().padStart(2, '0');
    return `${year}-${month}-${day}`;
  },
  previewImage: function (e) {
    const current = e.currentTarget.dataset.src; // 获取当前点击的图片的URL
    console.log(this.data.piclist);
    wx.previewImage({
      current: current, // 当前显示图片的http链接
      urls: this.data.piclist.map(item => this.data.WebUrl + item.filePath.slice(1)) // 需要预览的图片http链接列表
    });
  },
  onPullDownRefresh: function() {
    // 在这里执行数据更新的操作，例如发送网络请求获取新数据
    // 数据更新完成后，调用 wx.stopPullDownRefresh() 停止下拉刷新的状态
    this.loadLession(0);
    wx.stopPullDownRefresh();
  },
  gotoLessionDetail: function (event) {
    console.log('index1', event.currentTarget.dataset.index);
    console.log('index1type', event.currentTarget.dataset.type);
    var url = common.getLessionDetailUrl(event.currentTarget.dataset.index, event.currentTarget.dataset.type);
    console.log('url', url);
    wx.navigateTo({
      url: url,
    })
  },
})
